#ifndef _FILTER_H_
#define _FILTER_H_

#include "EventProcessor.h"
#include "EventProcessorImp.h"
#include "Message.h"
#include "DistributedCounter.h"

class FilterImp : public EventProcessorImp {

private:

  //EventProcessor Sieve; 

  //FilterImp(EventProcessor& _sieve);

  FilterImp();

  MESSAGE_HANDLER_DECLARATION(FilterThis);	

  MESSAGE_HANDLER_DECLARATION(Die);
	
  friend class Filter;
};

// Interface class
class Filter : public EventProcessor {
public:

  //Filter(EventProcessor& _sieve);

  Filter();
};

inline Filter::Filter(){
  evProc = new FilterImp();
}

#endif 
